User-Level Extensibility in the Mona File System

نویسندگان

  • Paul W. Schermerhorn
  • Robert J. Minerick
  • Peter W. Rijks
  • Vincent W. Freeh
چکیده

An extensible file system raises the level of file abstraction which provides benefits to both the end-user and programmer. The Modify-on-Access file system provides safe and simple user-defined extensibility through transformations, which are modular operations on input and output streams. A user inserts transformations into input and output streams, which modify the data accessed. Untrusted transformations execute in user space for safety. Performance of user-level transformations, although much slower than that of in-kernel transformations, is comparable to other user-level approaches, such as pipes. This paper presents several interesting user-level transformations. For example, the command transformation executes a shell script whose input and output are routed from/to the file system. A file guarded by the ftp transformation is a “mount” point to an FTP server. The php transformation creates dynamic documents from PHP source when read. A file written to a sound device that is guarded by the mp3 transformation is decoded on the fly, in the file system, before reaching the sound device. Mona is a novel approach to file system extensibility that provides heretofore unseen flexibility. Mona is finegrained: a user defines actions on a per-file basis. It is modular: transformations can be stacked upon one another. Mona supports two classes of transformations: kernel-resident and user-level.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Mona: an Adaptive, Multiple Level Extensible File System

This paper presents the Modify-on-Access (Mona) le system that provides extensibility through transformations applied to streams of data. Mona is novel in two ways. First, it o ers two levels of extensions (kernel and user). It allows performance-critical operations to execute with little overhead in the kernel and untrusted or more complex operations to execute in user space. Second, a running...

متن کامل

Streaming extensibility in the Modify-on-Access file system

This paper presents the Modify-on-Access (Mona) le system that provides extensibility through transformations applied to streams of data. Mona overcomes two limitations of prior extensible le systems. First, the Mona le system o ers two levels of extensions (kernel and user) that share a common interface. It allows performance-critical operations to execute with modest overhead in the kernel an...

متن کامل

The File System Belongs in the Kernel

This paper argues that a shared, distributed name space and I/O interface should be implemented inside the operating system kernel. The grounding for the argument is a comparison between the Sprite network operating system and the Mach microkernel. Sprite optimizes the common case of file and device access, both local and remote, by providing a kernel-level implementation. Sprite also allows fo...

متن کامل

File System Extensibility and Reliability Using an in-Kernel Database

of the Thesis File System Extensibility and Reliability Using an in-Kernel Database by Aditya Kashyap Master of Science in Computer Science Stony Brook University 2004 File systems are responsible for storing data efficiently and reliably. Databases also have similar tasks, but generally have more concern for reliability than file systems. We have developed a file system, KBDBFS, on top of an i...

متن کامل

The Modify-on-Access File System

This paper presents the Modify-on-Access (MonA) le system, an active le system, that cooperates with processes to accomplish tasks. The MonA le system optimizes critical read and write paths, while simplifying system software and application programs. MonA provides a framework for dynamically pushing and popping modular transformations onto data streams during accesses. We demonstrate that the ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001